from sqlalchemy.orm import Session
from app.database.models import User
from app.services.auth_service import get_password_hash
import logging

# 配置日志记录器
logger = logging.getLogger(__name__)

def get_user_by_id(db: Session, user_id: int):
    """根据用户ID获取用户信息"""
    return db.query(User).filter(User.id == user_id).first()

def get_default_user_id(db: Session):
    """获取默认用户ID，如果没有用户则创建一个默认用户"""
    # 查询第一个用户
    user = db.query(User).first()
    
    if user:
        logger.debug(f"获取到默认用户ID: {user.id}")
        return user.id
    
    # 如果没有用户，创建一个默认用户
    hashed_password = get_password_hash("default_password")
    default_user = User(
        username="default",
        email="default@example.com",
        hashed_password=hashed_password
    )
    
    db.add(default_user)
    db.commit()
    db.refresh(default_user)
    
    logger.debug(f"创建并获取到默认用户ID: {default_user.id}")
    return default_user.id 